A communications network, such as the Internet, transmits packets of information between interconnected communications sites. Information of all types, such as text, pictures, music and video, is transmitted over the network in the form of information packets using a protocol such as the Internet Protocol (IP). Each packet can travel though a number of communications sites, over a “path” or “route,” before reaching the destination site. Some communications sites are called “routers” because they direct a packet to the next leg, or “hop,” of the route towards the destination site. When all of the packets have arrived at the destination, they are reassembled to re-create the information that was originally transmitted. IP is called a “connection-less” system because each individual packet of information can take a different path to reach the destination site.
A communication that relies solely on IP can be unreliable due to packet loss, reordering and duplication. The IP delivery model is often referred to as a “best effort” system and an additional end-to-end protocol, such as Transmission Control Protocol (TCP), is required to provide reliability. TCP achieves this through mechanisms such as acknowledgements and packet re-transmission, which adds to the overall information transfer delay.
The best effort IP communications model is adequate for some network applications, such as File Transfer Protocol (FTP) and e-mail. For other network applications, however, such as those sending multimedia information that requires a high bandwidth, the delay and other problems caused by the best effort IP model can be unsatisfactory. For these other applications, a method of ensuring a certain Quality of Service (QoS), including bandwidth, delay, and packet loss guarantees, is required.
Video on the Internet
In recent years, the technologies of video data compression, storage, and interactive accessing have converged with network communications technologies, to present exciting prospects for users who seek access to remotely stored multimedia information.
Voice over IP
Traditionally, computer networks were used to exchange static files or data, such as text and spreadsheet files, while the Public Switched Telephone Network (PSTN) was used to exchange voice information. Computer networks, however, are increasingly being used to transport “voice” information. Such networks include a plurality of voice agents that convert voice information from its traditional telephony form to a form that is suitable for packet transmission. In other words, the voice agent encodes, compresses and encapsulates the voice information into a plurality of data packets. Examples of voice agents include IP telephones, voice over IP (VoIP) gateways, certain private branch exchanges (PBXs), personal computers (PCs) running communication applications, network devices providing voice gateway services, etc. A calling party uses a voice agent to initiate a VoIP call. Once the voice information has been converted into digitized packet format, it is carried by the computer network to a second voice agent configured to serve the called party. Voice traffic, unlike static data files or records, is highly sensitive to delay and to lost packets. That is, delays in receiving data packets carrying voice information at the called party's voice agent can seriously degrade the quality of the call. Accordingly, packets carrying voice information should be delivered to the called party with the highest QoS and in a timely manner.
The IPv6 Protocol
To facilitate cooperation among networks and computers, procedures and standards for protocols used for communication over the Internet are provided in, e.g., standards that are agreed upon and used by Internet users and organizations. For example, the World Wide Web Consortium develops standards for the evolution of a fast growing part of the Internet, the World Wide Web (the “Web”). In addition, the Internet society supports the work of the Internet Activities Board (IAB), which handles much of the Internet's architectural issues. The IAB's Internet engineering task force is responsible for overseeing the evolution of protocols, such as the Transmission Control protocol/Internet protocol (TCP/IP) and version 6 of the IP protocol (IPv6).
With the existing IPv4 protocol, each IP address consists of 32 address bits divided into four groups of eight bits (A.B.C.D), each group separated by a period. An IP address consists of a first part called the “network number”, and a second part called the host ID that identifies an individual host on that network.
Networks consist of individual segments of network cable or links interconnected by gateway devices like routers and bridges. Each host on the Internet, or any other IP network, is uniquely identified on the network by a “network number”. Such network numbers permit a group of host computers (peers) to communicate efficiently with each other. Network numbers look very much like IP addresses, but the two should not be confused.
In addition, IP addresses are divided into five groups designated classes A–E. Addresses in classes A and B have already been assigned to large organizations, and addresses in classes D and E have been reserved for special purposes by the IP administrative authorities. One of these special purposes is multicast operation. This leaves only the class C range of addresses available for public use.
In general, a network address uses the leftmost byte (8 bits) of its host's addressing if the address falls within the class A range, uses the leftmost two bytes of its host's addressing if the address falls within the class B range, and uses the leftmost three bytes of its host's addressing if the address falls within the class C range. Network addressing fundamentally organizes hosts into groups. This can improve security by isolating critical nodes, and can reduce network traffic by preventing transmissions between nodes that do not need to communicate with each other.
Network addressing becomes even more powerful when used to introduce sub-netting. Subnets allow network traffic between hosts to be segregated based on the network's configuration. This improves network security and performance to a degree by organizing hosts into small groups.
Due to the explosion of Internet use, the number of addresses currently available in class C is limited. For this and other reasons the IAB's Internet engineering task force developed the IPv6 protocol based on a 128 bit IP address.
Version 6 of the IP protocol makes a number of changes to the existing IPv4 protocol to improve Internet operations. Part of these changes affect IP addressing. The number of address bits is increased from 32 to 128 to expand the number of IP addresses that can be generated to more than 3×1038 addresses. However, the increase in the number of IP address bits results in long IP addresses. To alleviate this result, IPv6 addresses are specified with hex numbers rather than decimal numbers, and an addressing shorthand is utilized. Other changes introduced in the IPv6 protocol add additional features for performance and privacy.
The Internet generally operates according to a client/server model of information delivery. The primary reason to configure a client/server network is to allow many clients to access similar applications in files stored on a server. In this model, a client computer “connects” to a server computer on which information resides, to thereby request the services of the server. The services provided by the server may involve searching for information and returning it to the client, such as when a database on the Web is queried. Other examples of services include delivering information (such as a “web page”) and handling incoming and outgoing electronic mail (e-mail).
To access a web site on the Internet to request a service, a client typically generates and issues packets to an online service or an Internet service provider (ISP). The client issues the packets by either dialing into the online service or ISP over a telephone line, or through an Internet service, such as a cable modem or high-speed digital subscriber line (DSL) connection. Telephone lines may transmit data at, e.g., 56 kilobits per second (Kbps), whereas leased telephone lines, such as T1 lines, may be employed to carry data at higher rates, such as 1.544 Mbps. Higher-speed links, such as T3 links, can transport data at rates up to 44.746 Mbps. From the ISP, the packets travel through levels of communication links, hardware platforms, and networks before they reach their final destination. The hardware platforms may comprise intermediate stations, such as hubs, routers and switches, configured to process the packets and forward them over the networks to their proper destinations. Specifically, the intermediate stations direct data traffic over the Internet by processing the packets traveling over the network to determine where the data is headed. Based on the destination of the data, the packet is routed in a most efficient manner, generally to another intermediate station that, in turn, sends the packet to a next station.
However, routing of packets in this manner may not provide the quality of network links necessary for a particular transmission of packets. For example, a series of packets may carry a voice signal and require network links having a high Quality of Service (QoS) to provide the bandwidth required for the voice data packets. Presently, some of the voice data packets may be routed over high quality network links but other packets may not. A voice signal reconstructed from voice data packets not traveling over high-quality network links with appropriate bandpass will often exhibit noticeable degradation to a listener. A user requiring a link with a high QoS to handle signals such as voice data packets often has to lease a dedicated high QoS line between a source and destination to ensure the level of service needed to carry such packets.
To meet this need, a dedicated-connection switching technology, called Asynchronous Transfer Mode (ATM), has been developed. ATM is a “connection” oriented system because a specific path, called a Switched Virtual Circuit (SVC), is established between an origin and a destination. Every information packet flowing from the origin to the destination travels over the same SVC. Such an arrangement allows the system to establish a specific QoS for a specific flow. This can be done, for example, by reserving resources, such as bandwidth, along the path of the SVC when the SVC is created.
Because of the differences between IP and ATM, various protocols have been developed to transmit IP traffic over an ATM network infrastructure. One such protocol is the Resource Reservation Setup Protocol (RSVP).
RSVP
RSVP is a signaling protocol that also permits entities to reserve bandwidth on computer networks to receive from one or more sourcing entities a desired traffic flow, such as a multimedia signal stream. In RSVP, a data flow is a sequence of messages that have the same source, destination (one or more), and the same desired quality of service.
Pursuant to RSVP, sources send RSVP Path messages identifying themselves and indicating the bandwidth needed to receive their programming or content. These messages proceed hop-by-hop through intermediate network devices (such as routers), making those devices aware of the possibility that a reservation of resources may be required. If a receiver is interested in the programming or content offered by a particular source, it responds with a reservation request contained in a RSVP Reservation (Resv) message. This message travels hop-by-hop back to the source. At each hop, the corresponding intermediate device establishes a session for the receiver and sets aside sufficient resources to provide the requested bandwidth for the desired traffic flow. These resources are immediately made available to the packetized traffic flow. If the resources are not available, the reservation is refused explicitly so that the receiver knows it cannot depend on the corresponding resources being devoted to its traffic. By using RSVP, packets carrying voice information and other high QoS services can be accorded the resources and services they need to ensure timely delivery.
However, RSVP requires that to make such QoS reservations routers along the Internet backbone must be RSVP enabled and communications must first take place through such RSVP enabled routers to reserve a path or “tunnel” through the Internet having the required QoS from end to end. This is followed by transmission of the packets over the reserved path. Thus, the RSVP operation requires additional time caused by making path reservations before packets can be transmitted. This is a detriment.